FIG. 7 shows a conventional first-in-first-out memory device (hereinafter a FIFO) 700 in a block diagram. A conventional FIFO 700 may be organized into M queues 702-1 to -M. Data may propagate through such queues in a first-in-first-out fashion. For example, as shown in FIG. 7, data values may be written into queue 702-1 in the order w0, w1, w2, and then subsequently read out in the same order w0, w1, w2.
The number of queues (702-1 to -M) in conventional FIFO 700 may be a relatively small fixed value, in the range of four to eight. The number of queues may be configurable operations machine, however once the FIFO has been configured, each queue has the same depth (i.e., number of storage locations). Each queue (702-1 to -M) may be conceptualized as a FIFO of its own, receiving and outputting data values independently of the other queues.